An optical navigation device generally uses image correlation techniques to determine movement of the optical navigation device relative to an imaged reference. Features within each image are correlated to one another in sequential images in order to determine the direction of movement of the device relative to the imaged (e.g., a surface or scene).
In conventional correlation techniques, there are three parameters that can be used to determine the effectiveness of the navigation tracking techniques. These parameters are speed, resolution, and accuracy. The speed of the correlation process depends primarily on the size of the navigation array that needs to be processed. The navigation array is the set of picture elements (i.e., pixels) that need to be processed and compared with the pixels of the reference image. The pixels of the reference image are referred to as the base array. Resolution refers to the amount of detail that is discernable with the image. The resolution of an image depends on the pixel density, or the size of each pixel and how many pixels are used to image a given area. In general, the speed of the correlation process is reduced in relation to an increase in the resolution. The accuracy of the correlation technique depends on the type of correlation algorithms that are used. In general, more accurate correlation algorithms can decrease the speed of the correlation process.
Within conventional correlation techniques, referencing refers to how two images are correlated. In general, there are two types of referencing: relative referencing and absolute referencing. Relative referencing refers to determining individual movements from one image to the next sequential image. With each new image, the reference image is updated so that the new image is compared with the immediately preceding image as the reference image. Absolute referencing refers to determining movements from each image relative to a fixed image. So each new image is compared with the same reference image, without updating the reference image each time.
Re-referencing is one source of errors in conventional correlation techniques. Re-referencing refers to obtaining a new reference image, or base array, when the navigation array approaches a boundary condition. In order to maintain some correlation between each new image and the reference image, a new base array is chosen as the reference image when the device anticipates that the navigation array will image a surface or scene outside of the previous base array. This selection of a new base array is referred to as re-referencing. However, each time re-referencing occurs, an error factor can accumulate and cause the calculated movement to be slightly incorrect. As more re-referencing occurs, the cumulative error can exceed acceptable limits.
Some conventional correlation techniques use sub-pixel approximation in order to artificially increase the resolution and, hence, accuracy of the correlation process. Sub-pixel approximation generally refers to approximating movements that are less than one pixel in magnitude. Sub-pixel approximation is used in applications such as printing devices that benefit from relatively high movement sensitivity. However, sub-pixel approximation techniques can increase the amount of error in the correlation process.
3-point peak (3PP) approximation is one type of sub-pixel approximation that is used in applications to increase movement sensitivity to determine displacement movements that are a fraction of a pixel dimension. In applications which rely on relative referencing, 3PP approximation can be accurate and useful because cumulate movement data, and the associated cumulative error, are not used. However, 3PP approximation is not suitable for absolute referencing because the cumulative error quickly exceeds acceptable limits based on the tendency of 3PP approximation to skew approximation values in a non-linear manner.